package net.aiotos.common.dto;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.NonNull;

@Data
@NoArgsConstructor
public class DataValueDto {
    private String oid;
    private String name;
    @NonNull
    private Object value;

    /**
     * 根据数据点名称实例化
     * @param name
     * @param value
     * @return DataValueDto
     */
    public static final DataValueDto withNameNew(String name, @NonNull Object value) {
        final DataValueDto dataValueDto = new DataValueDto();
        dataValueDto.name = name;
        dataValueDto.value = value;
        return dataValueDto;
    }

    /**
     * 根据数据点oid实例化
     * @param oid
     * @param value
     * @return DataValueDto
     */
    public static final DataValueDto withOidNew(String oid, @NonNull Object value) {
        final DataValueDto dataValueDto = new DataValueDto();
        dataValueDto.oid = oid;
        dataValueDto.value = value;
        return dataValueDto;
    }
}
